A solid-state drive (SSD), sometimes called a solid-state disk or electronic disk, is a data storage device that uses solid-state memory to store persistent data with the intention of providing access in the same manner of a traditional block i/o hard disk drive. SSDs are distinguished from traditional magnetic disks such as hard disk drives (HDDs) or floppy disk, which are electromechanical devices containing spinning disks and movable read/write heads. In contrast, SSDs use microchips that retain data in non-volatile memory chips[1] and contain no moving parts.[1] Compared to electromechanical HDDs, SSDs are typically less susceptible to physical shock, are silent, have lower access time and latency, but are more expensive per gigabyte (GB). SSDs use the same interface as hard disk drives, thus easily replacing them in most applications.[2]
As of 2010[update], most SSDs use NAND-based flash memory, which retains memory even without power. SSDs using volatile random-access memory (RAM) also exist for situations that require even faster access, but do not necessarily need data persistence after power loss, or use external power or batteries to maintain the data after power is removed.[2]
A hybrid drive combines the features of an HDD and an SSD into one unit, containing a large HDD and a smaller SSD cache to improve performance of frequently accessed files. These can offer near-SSD performance in most applications (such as system startup and loading applications) at a lower price than an SSD. These are not suitable for data-intensive work, nor do they offer the other advantages of SSDs.
Contents |
The origins of SSDs came from the 1950s using two similar technologies, magnetic core memory and card capacitor read-only store (CCROS).[3][4] These auxiliary memory units, as they were called at the time, emerged during the era of vacuum tube computers. But with the introduction of cheaper drum storage units, their use was discontinued.[5]
Later, in the 1970s and 1980s, SSDs were implemented in semiconductor memory for early supercomputers of IBM, Amdahl and Cray;[6] however, the prohibitively high price of the built-to-order SSDs made them quite seldom used. In the late 1970s, General Instruments produced an electrically alterable ROM (EAROM) which operated somewhat like the later NAND flash memory, but the inability to achieve a 10-year life was not practical and many companies abandoned the technology.[7] In 1976 Dataram started selling a product called BULK CORE providing up to 2MB of solid state storage compatible with DEC and Data General computers.[8] Texas Memory Systems introduced a 16 kilobyte (KB) RAM solid-state drive in 1978 to be used by oil companies for seismic data acquisition.[9] The following year, StorageTek developed the first modern type of solid-state drive.[10]
The Sharp PC-5000, introduced in 1983, used 128 kilobyte solid-state storage cartridges, containing bubble memory.[11] In 1984 Tallgrass Technologies Corporation had a tape back up unit of 40 MB with a solid state 20 MB unit built in. The 20 MB unit could be used instead of a hard drive. In September 1986, Santa Clara Systems introduced BatRam, 4 megabyte (MB) mass storage system expandable to 20 MB using 4 MB memory modules. The package included a rechargeable battery to preserve the memory chip contents when the array was not powered.[12] 1987 saw the entry of EMC Corporation into the SSD market, with drives introduced for the mini-computer market. However, by 1993 EMC had exited the SSD market.[13][14]
Software-based RAM Disks are still used today because they are an order of magnitude faster than the fastest SSD, but they consume CPU resources and cost much more on a per GB basis.[15]
In 1994, STEC, Inc. bought Cirrus Logic’s flash controller operation, allowing the company to enter the flash memory business for consumer electronic devices.
In 1995, M-Systems introduced flash-based solid-state drives.[16] They had the advantage of not requiring batteries to maintain the data in the memory (required by the prior volatile memory systems), but were not as fast as the DRAM-based solutions.[17] Since then, SSDs have been used successfully as HDD replacements by the military and aerospace industries, as well as for other mission-critical applications. These applications require the exceptional mean time between failures (MTBF) rates that solid-state drives achieve, by virtue of their ability to withstand extreme shock, vibration and temperature ranges.[18]
BiTMICRO made a number of introductions and announcements in 1999 around flash-based SSDs including an 18 GB 3.5 in SSD.[19] Fusion-io announced a PCIe-based SSD with 100,000 input/output operations per second (IOPS) of performance in a single card with capacities up to 320 gigabytes in 2007.[20] At Cebit 2009, OCZ demonstrated a 1 terabyte (TB) flash SSD using a PCI Express ×8 interface. It achieves a maximum write speed of 654 megabytes per second (MB/s) and maximum read speed of 712 MB/s.[21] In December 2009, Micron Technology announced the world's first SSD using a 6 gigabits per second (Gbit/s) or 600 (MB/s) SATA interface.[22]
Enterprise flash drives (EFDs) are designed for applications requiring high I/O performance (IOPS), reliability, and energy efficiency. In most cases an EFD is an SSD with a higher set of specifications compared to SSDs that would typically be used in notebook computers. The term was first used by EMC in January 2008, to help them identify SSD manufacturers who would provide products meeting these higher standards.[23] There are no standards bodies who control the definition of EFDs, so any SSD manufacturer may claim to produce EFDs when they may not actually meet the requirements. Likewise there may be other SSD manufacturers that meet the EFD requirements without being called EFDs.[24]
The key components of an SSD are the controller and the memory to store the data. The primary memory component in an SSD had been DRAM volatile memory since they were first developed, but since 2009 it is more commonly NAND flash non-volatile memory.[2][25] Other components play a less significant role in the operation of the SSD and vary between manufacturers.
Every SSD includes a controller that incorporates the electronics that bridge the NAND memory components to the host computer. The controller is an embedded processor that executes firmware-level code and is one of the most important factors of SSD performance.[26] Some of the functions performed by the controller include:[27][28]
The performance of the SSD can scale with the number of parallel NAND flash chips used in the device. A single NAND chip is relatively slow, due to narrow (8/16 bit) asynchronous IO interface, and additional high latency of basic IO operations (typical for SLC NAND, ~25 μs to fetch a 4K page from the array to the IO buffer on a read, ~250 μs to commit a 4K page from the IO buffer to the array on a write, ~2 ms to erase a 256 kiB block). When multiple NAND devices operate in parallel inside an SSD, the bandwidth scales, and the high latencies can be hidden, as long as enough outstanding operations are pending and the load is evenly distributed between devices.[29] Micron and Intel initially made faster SSDs by implementing data striping (similar to RAID 0) and interleaving in their architecture. This enabled the creation of ultra-fast SSDs with 250 MB/s effective read/write speeds with the SATA 3 Gb/s interface in 2009.[30] Two years later and continuing to leverage this parallel flash connectivity, SandForce released consumer-grade SATA 6 Gb/s SSD controllers which support 500 MB/s read/write speeds.[31]
Most SSD manufacturers use non-volatile NAND flash memory in the construction of their SSDs because of the lower cost compared to DRAM. and the ability to retain the data without a constant power supply, ensuring data persistence through sudden power outages. Flash memory SSDs are slower than DRAM solutions, and some early designs were even slower than HDDs after continued use. This problem was resolved by controllers that came out in 2009 and later.[32]
Flash memory-based solutions are typically packaged in standard disk drive form factors (1.8-, 2.5-, and 3.5-inch), or smaller unique and compact layouts because of the compact memory.
Lower priced drives usually use multi-level cell (MLC) flash memory, which is slower and less reliable than single-level cell (SLC) flash memory.[33][34] This can be mitigated or even reversed by the internal design structure of the SSD, such as interleaving, changes to writing algorithms,[34] and higher over-provisioning (more excess capacity) with which the wear-leveling algorithms can work.[35][36][37]
SSDs based on volatile memory such as DRAM are characterized by ultrafast data access, generally less than 10 microseconds, and are used primarily to accelerate applications that would otherwise be held back by the latency of flash SSDs or traditional HDDs. DRAM-based SSDs usually incorporate either an internal battery or an external AC/DC adapter and backup storage systems to ensure data persistence while no power is being supplied to the drive from external sources. If power is lost, the battery provides power while all information is copied from random access memory (RAM) to back-up storage. When the power is restored, the information is copied back to the RAM from the back-up storage, and the SSD resumes normal operation (similar to the hibernate function used in modern operating systems).[17][38]
SSDs of this type are usually fitted with DRAM modules of the same type used in regular PCs and servers, which can be swapped out and replaced by larger modules.
A remote, indirect memory-access disk (RIndMA Disk) uses a secondary computer with a fast network or (direct) Infiniband connection to act like a RAM-based SSD, but the new faster flash memory based SSDs already available in 2009 are making this option not as cost effective.[39]
A flash-based SSD typically uses a small amount of DRAM as a cache, similar to the cache in Hard disk drives. A directory of block placement and wear leveling data is also kept in the cache while the drive is operating. Data is not permanently stored in the cache.[29] One SSD controller manufacturer, SandForce, does not use an external DRAM cache on their designs, but still achieve very high performance. Eliminating the external DRAM enables a smaller footprint for the other flash memory components in order to build even smaller SSDs.[40]
Another component in higher performing SSDs is a capacitor or some form of battery. These are necessary to maintain data integrity such that the data in the cache can be flushed to the drive when power is dropped; some may even hold power long enough to maintain data in the cache until power is resumed. In the case of MLC flash memory, a problem called lower page corruption can occur when MLC flash memory loses power while programming an upper page. The result is data written previously and presumed safe can be corrupted if the memory is not supported by a super capacitor in the event of a sudden power loss. This problem does not exist with SLC flash memory.[28]
The host interface is not specifically a component of the SSD, but it is a key part of the drive. The interface is usually incorporated into the controller discussed above. The interface is generally one of the interfaces found in HDDs. They include:
The size and shape of any device is largely driven by the size and shape of the components used to make that device. Traditional HDDs and optical drives are designed around the rotating platter or optical disc along with the spindle motor inside. If an SSD is made up of various interconnected integrated circuits (ICs) and an interface connector, then its shape could be virtually anything imaginable because it is no longer limited to the shape of rotating media drives. Some solid state storage solutions come in a larger chassis that may even be a rack-mount form factor with numerous SSDs inside. They would all connect to a common bus inside the chassis and connect outside the box with a single connector.[2]
The benefit of using a current HDD form factor would be to take advantage of the extensive infrastructure already in place to mount and connect the drives to the host system.[2][44] These traditional form factors are known by the size of the rotating media, e.g., 5.25", 3.5", 2.5", 1.8", not by the dimensions of the drive casing.[45]
Many of the DRAM-based solutions use a box that is often designed to fit in a rack-mount system. The number of DRAM components required to get sufficient capacity to store the data along with the backup power supplies requires a larger space than traditional HDD form factors.
Form factors which were more common to memory modules are now being used by SSDs to take advantage of their flexibility in laying out the components. Some of these include PCIe, mini PCIe, mini-DIMM, MO-297, and many more.[46] The SATADIMM from Viking Modular uses an empty DDR3 DIMM slot on the motherboard to provide power to the drive with a separate SATA connector to provide the data connection back to the computer. The result is an easy to install SSD with a capacity equal to drives that typically take a full 2.5 in expansion slot.[47] At least one manufacturer, InnoDisk, is producing a drive that sits directly on the SATA connector on the motherboard without any other support or mechanical mount.[48] Some SSDs are based on the PCIe form factor and connect both the data interface and power through the PCIe connector to the host. These drives can use either direct PCIe flash controllers[49] or a PCIe-to-SATA bridge device which then connects to SATA flash controller(s).[50]
In the early 2000s, a few companies introduced SSDs in Ball Grid Array (BGA) form factors, such as M-Systems’ (now SanDisk) DiskOnChip[51] and Silicon Storage Technology’s NANDrive[52][53] (now produced by Greenliant Systems), and Memoright's M1000[54] for use in embedded systems. The main benefits of BGA SSDs are their low power consumption, small chip package size to fit into compact subsystems, and that they can be soldered directly onto a system motherboard to reduce adverse effects from vibration and shock.[55]
Making a comparison between SSDs and ordinary (spinning) HDDs is difficult. Traditional HDD benchmarks are focused on finding the performance aspects where they are weak, such as rotational latency time and seek time. As SSDs do not spin, or seek, they may show huge superiority in such tests. However, SSDs have challenges with mixed reads and writes, and their performance may degrade over time. SSD testing must start from the (in use) full disk, as the new and empty (fresh out of the box) disk may have much better write performance than it would show after only weeks of use.[56]
Most advantages of solid-state disks over traditional hard drives come from the characteristic of data being accessed completely electronically instead of an electro-mechanical machine. On the other hand, traditional hard drives currently excel by offering much more capacity for the same price.
The following table shows a detailed overview of the advantages and disadvantages of both technologies. Comparisons reflect typical characteristics, and may not hold for a specific device.
Attribute or characteristic | Solid-state drive | Hard disk drive |
---|---|---|
Spin-up time | Almost Instantaneous; nothing mechanical to "spin up". May need a few milliseconds to come out of an automatic power-saving mode. | May take several seconds. With a large number of drives, spin-up may need to be staggered to limit total power drawn. |
Random access time[57] | About 0.1 ms - many times faster than HDDs because data is accessed directly from the flash memory | Ranges from 5–10 ms due to the need to move the heads and wait for the data to rotate under the read/write head[58] |
Read latency time[59] | Generally low because the data can be read directly from any location; In applications where hard disk seeks are the limiting factor, this results in faster boot and application launch times (see Amdahl's law).[60] | Generally high since the mechanical components require additional time to get aligned |
Consistent read performance[61] | Read performance does not change based on where data is stored on an SSD | If data is written in a fragmented way, reading back the data will have varying response times |
Fragmentation | There is usually very little benefit to reading data sequentially (beyond typical FS block sizes), making fragmentation a void issue for SSDs. Defragmentation process also makes additional writes on the NAND flash cells that already have a limited cycle life.[62][63] It is also uncertain whether defragmentation would arrange the data in a truly sequential order, as the drive itself can again remap it to various positions. | File systems on HDDs may fragment after continued operations of erasing and writing data, especially involving large files. Therefore periodical defragmentation is required to maintain ultimate performance.[64] |
Acoustic levels | SSDs have no moving parts and make no sound | HDDs have moving parts (heads, spindle motor) and have varying levels of sound depending upon model |
Mechanical reliability | A lack of moving parts virtually eliminates mechanical breakdowns | HDDs have many moving parts that are all subject to failure over time |
Maintenance of temperature[65] | SSDs do not usually require any cooling maintenance and they can tolerate higher temperatures than HDDs. High-end enterprise models delivered as add-on cards may include heat sinks to dissipate heat generated by its chips. | Air-forced ventilation is recommended for desktop hard drives to avoid build-up of heat.[66] Otherwise, bad sectors on its media can appear later and/or its lifespan will diminish over time. HDDs designed for laptops do not need as much cooling, but heat issues are a matter of concern with them too. |
Susceptibility to environmental factors[60][67][68] | No flying heads or rotating platters to fail as a result of shock, altitude, or vibration | The flying heads and rotating platters are generally susceptible to shock, altitude, and vibration |
Installation and mounting | As for SSD, as long as it's mounted securely to its place, the position and installation mechanism do not have much of impact to its normal use. Most ordinary SSDs have all components (except for power and data connectors) encased inside. | While installing a hard disk drive, one must take care of sufficient cooling and sturdy mounting. Additionally accessories to dampen vibration, noise and mechanical shocks, can be installed. The printed circuit board underneath of a HDD is usually exposed and any conductive material can not be let to short-circuit the components or electronic contact points. |
Magnetic susceptibility[69] | No impact on flash memory | Magnets or magnetic surges can alter data on the media |
Weight and size[67] | The weight of flash memory and the circuit board material are very light compared to HDDs | Higher performing HDDs require heavier components than laptop HDDs (which are light, but not as light as SSDs) |
Parallel operation | Some flash controllers can have multiple flash chips reading and writing different data simultaneously | HDDs have multiple heads (one per platter) but they are connected, and share one positioning motor. |
Write longevity | Flash-based SSDs have a limited number of writes (1-5 million or more) over the life of the drive. Software controllers manage this limitation in such a way that drives can last for many decades before failure.[70][71][72][73] SSDs based on DRAM do not have a limited number of writes. | Magnetic media do not have a similar limited number of writes but are susceptible to eventual mechanical failure. |
Secure writing limitations | NAND flash memory cannot be overwritten, but has to be rewritten to previously erased blocks. If a software encryption program encrypts data already on the SSD, the overwritten data is still unsecured, unencrypted, and accessible (drive-based hardware encryption does not have this problem). Also data cannot be securely erased by overwriting the original file without special "Secure Erase" procedures built into the drive.[74] | HDDs can overwrite data directly on the drive in any particular sector. |
Cost per capacity | As of February 2011[update], NAND flash SSDs cost about (US)$.90–2.00 per GB | As of February 2011[update], HDDs cost about (US)$0.05/GB for 3.5 in and $0.10/GB for 2.5 in drives |
Storage capacity | As of December 2011[update], SSDs come in different sizes up to 2TB but are typically not larger than 64-256GB, due to their high cost per capacity. | As of December 2011[update], HDDs are typically up to 1TB in capacity but drives up to 4TB are available. |
Read/write performance symmetry | Less expensive SSDs typically have write speeds significantly lower than their read speeds. Higher performing SSDs have a balanced read and write speed. | HDDs generally have slightly lower write speeds than their read speeds. |
Free block availability and TRIM | SSD write performance is significantly impacted by the availability of free, programmable blocks. Previously written data blocks that are no longer in use can be reclaimed by TRIM; however, even with TRIM, fewer free, programmable blocks translates into reduced performance.[29][75][76] | HDDs are not affected by free blocks or the operation (or lack) of the TRIM command |
Power consumption | High performance flash-based SSDs generally require 1/2 to 1/3 the power of HDDs; High performance DRAM SSDs generally require as much power as HDDs and consume power when the rest of the system is shut down.[77][78] | High performance HDDs generally require between 12-18 watts; drives designed for notebook computers are typically 2 watts. |
While it is true that both memory cards and most SSDs use flash memory, they serve very different markets and purposes. Each has a number of different attributes which are optimized and adjusted to best meet the needs of particular users. Some of these characteristics include power consumption, performance, size, and reliability.[79]
SSDs were originally designed for use in a computer system. The first units were intended to replace or augment hard disk drives, so the operating system recognized them as a hard drive. Originally, solid state drives were even shaped and mounted in the computer like hard drives. Later SSDs became smaller and more compact, eventually developing their own unique form factors. The SSD was designed to be installed one time inside the computer and only have it removed when servicing or upgrading it.[79]
In contrast, memory cards like CompactFlash (CF), Secure Digital (SD), Memory Stick, and xD-Picture Card were all originally designed for digital cameras and later found their way into cell phones, gaming devices, and GPS units. Nearly all memory cards are smaller in size than SSDs and they were engineered to be inserted and removed repeatedly.[79] There are adapters which enable some memory cards like the CF card to interface to a computer as an SSD, but they are not intended to be the primary storage device in the computer. The typical CF card interface is generally 3-4 times slower than is available on SSDs.
The technological trend of 2 year 50% decline in costs is no longer possible in NAND flash as it approaches its terminal node.[80] Instead NAND makers anticipate more modest cost declines in the period 2011-2015. Capacities in client SSDs are typically dictated by cost concerns rather than technical limitations of NAND storage.
Solid-state drive (SSD) technology has been marketed to the military and niche industrial markets since the mid-1990s..
Along with the emerging enterprise market, SSDs have been appearing in ultra-mobile PCs and a few lightweight laptop systems, adding significantly to the price of the laptop, depending on the capacity, form factor and transfer speeds. As of 2008[update], some manufacturers have begun shipping affordable, fast, energy-efficient drives priced at $350 to computer manufacturers. For low-end applications, a USB flash drive may be obtainable for anywhere from $10 to $100 or so, depending on capacity; alternatively, a CompactFlash card may be paired with a CF-to-IDE or CF-to-SATA converter at a similar cost. Either of these requires that write-cycle endurance issues be managed, either by refraining from storing frequently written files on the drive or by using a flash file system. Standard CompactFlash cards usually have write speeds of 7 to 15 MB/s while the more expensive upmarket cards claim speeds of up to 60 MB/s.
One of the first mainstream releases of SSD was the XO Laptop, built as part of the One Laptop Per Child project. Mass production of these computers, built for children in developing countries, began in December 2007. These machines use 1,024 MiB SLC NAND flash as primary storage which is considered more suitable for the harsher than normal conditions in which they are expected to be used. Dell began shipping ultra-portable laptops with SanDisk SSDs on April 26, 2007.[81] Asus released the Eee PC subnotebook on October 16, 2007, and after a successful commercial start in 2007, it was expected to ship several million PCs in 2008, with 2, 4 or 8 gigabytes of flash memory.[82] On January 31, 2008, Apple Inc. released the MacBook Air, a thin laptop with optional 64 GB SSD. The Apple Store cost was $999 more for this option, as compared to that of an 80 GB 4200 RPM hard disk drive.[83] Another option, the Lenovo ThinkPad X300 with a 64 gigabyte SSD, was announced by Lenovo in February 2008,[84] and is, as of 2008[update], available to consumers in some countries. On August 26, 2008, Lenovo released ThinkPad X301 with 128GB SSD option which adds approximately $200 US.
In 2008, low end netbooks appeared with SSDs. In 2009, SSDs began to appear in laptops.[81][83]
On January 14, 2008, EMC became the first enterprise storage vendor to ship flash-based SSDs into its product portfolio.[85]
In late 2008, Sun released the Sun Storage 7000 Unified Storage Systems (codenamed Amber Road), which use both solid state drives and conventional hard drives to take advantage of the speed offered by SSDs and the economy and capacity offered by conventional hard disks.[86]
Dell began to offer optional 256 GB solid state drives on select notebook models in January 2009.
In May 2009, Toshiba launched a laptop with a 512 GB SSD.[87][88]
As of October 2010[update], Apple's MacBook Air line carries solid state drives as standard.[89]
In December 2010, OCZ RevoDrive X2 PCIe SSD was available in 100GB to 960GB capacities delivering speeds over 740MB/s sequential speeds and random small file writes up to 120,000 IOPS. [90]
In November 2010, Fusion-io released its highest performing SSD drive named ioDrive Octal utilising PCI-Express x16 Gen 2.0 interface with storage space of 5.12TB, read speed of 6.0GB/s, write speed of 4.4GB/s and a low latency of 30 microseconds. It has 1.19M Read 512 byte IOPS and 1.18M Write 512 byte IOPS.[91]
In late 2011, computers based on Intel's Ultrabook specifications became available; these specifications dictate that Ultrabooks use an SSD. These are consumer-level devices (unlike many previous Flash offerings aimed at enterprise users), and represent the first widely available consumer computers using SSDs aside from the Macbook Air.
SSD technology is developing rapidly. Most of the performance measurements used on disk drives with rotating media are also used on SSDs. Performance of flash-based SSDs is difficult to benchmark because of the wide range of possible conditions. In a test performed in 2010 by Xssist, using IOmeter, 4 KB random 70% read/30% write, queue depth 4, the IOPS delivered by the Intel X25-E 64 GB G1 started around 10,000 IOPs, and dropped sharply after 8 minutes to 4,000 IOPS, and continued to decrease gradually for the next 42 minutes. IOPS vary between 3,000 to 4,000 from around 50 minutes onwards for the rest of the 8+ hours test run.[92]
Write amplification is the major reason for the change in performance of an SSD over time. Enterprise grade drives try to avoid this performance variation by increasing over provisioning, and by employing wear-leveling algorithms that move data around only when the drives are not being heavily utilized.[93]
Until 2009, SSDs were mainly used in those aspects of mission critical applications where the speed of the storage system needed to be as fast as possible. Since flash memory has become a common component of SSDs, the falling prices and increased densities have made it more financially attractive for many other applications. Organizations that can benefit from faster access of system data include equity trading companies, telecommunication corporations, streaming media and video editing firms. The list of applications which could benefit from faster storage is vast. Any company can assess the ROI from adding SSDs to their own applications to best understand if that will be cost effective for them.[2]
Flash-based solid-state drives can be used to create network appliances from general-purpose personal computer hardware. A write protected flash drive containing the operating system and application software can substitute for larger, less reliable disk drives or CD-ROMs. Appliances built this way can provide an inexpensive alternative to expensive router and firewall hardware.
SSDs based on an SD card with a live SD operating system are easily write-locked. Combined with a cloud computing environment or other writable medium, to maintain persistence, an OS booted from a write-locked SD card is robust, rugged, reliable, and impervious to permanent corruption. If the running OS degrades, simply turning the machine off and then on returns it back to its initial virgin uncorrupted state and thus is particularly solid. The SD card installed OS does not require removal of corrupted components since it was write-locked though any written media may need to be restored.
In 2011 Intel introduced a caching mechanism for their Z68 chipset (and mobile derivatives) called Smart Response Technology, which allows a SATA SSD to be used as a cache (configurable as write-through or write-back) for a conventional, magnetic hard disk drive.[94] A similar technology is available on HighPoint's RocketHybrid PCIe card.[95] Hybrid drives (H-HDSs) are based on the same principle, but integrate some amount of flash memory on board of a conventional drive instead of using a separate SSD. The flash layer in these drives can be accessed independently from the magnetic storage by the host using ATA-8 commands, allowing the operating system to manage it. For example Microsoft's ReadyDrive technology explicitly stores portions of the hibernation file in the cache of these drives when the system hibernates, making the subsequent resume faster.[96]
There are a number of computer file systems which are optimized for solid-state drives. Some of the more popular or notable are listed below.
The Linux kernel supports the TRIM function starting with version 2.6.33. The ext4 file system is supported when mounted using the "discard" parameter. Linux distributions usually do not set this kind of configuration automatically during installation.[97] The disk utilities (and therefore installation software that make use of them) have the ability to apply proper partition alignment.
Mac OS X 10.7 (Lion) supports TRIM, as does OS X 10.6.8 Snow Leopard.[98] It is also possible to add support for TRIM to versions earlier than 10.6.8. Along the sheer command being supported, there is however an uncertainty whether it is actually being utilized properly.[99]
Versions of Windows prior to Windows 7 are optimized for hard disk drives rather than SSDs.[100][101] Windows Vista includes ReadyBoost to exploit characteristics of USB-connected flash devices, but for SSDs it only improves the default partition alignment to prevent read-modify-write operations which reduce the speed of the SSD. This is because most SSDs are typically aligned on 4 KB sectors and most OSes are based on 512 byte sectors with the default partition set up unaligned .[102] The proper alignment really does not help the SSD's endurance over the life of the drive, however some Vista operations, if not disabled, can shorten the life of the SSD. Disk defragmentation should be disabled because the location of the file components on an SSD doesn't significantly impact its performance, but moving the files to make them contiguous using the Windows Defrag routine will cause unnecessary write wear on the limited number of P/E cycles on the SSD. The Superfetch feature will not materially improve the performance of the system and causes additional overhead in the system and SSD, although it does not cause wear.[103]
Windows 7 is optimized for SSDs[104][105] as well as for traditional magnetic hard disks. The OS looks for the presence of an SSD and operates differently with that drive. If an SSD is present, Windows 7 will disable disk defragmentation, Superfetch, ReadyBoost, and other boot-time and application prefetching operations. It also includes support for the TRIM command to reduce garbage collection of data which the OS has already determined is no longer valid. Without support for TRIM, the SSD would be unaware of this data being invalid and would unnecessarily continue to rewrite this data during garbage collection causing further wear on the SSD.[106][107]
Solaris as of version 10 Update 6 (released in October 2008), and recent versions of OpenSolaris and Solaris Express Community Edition can use SSDs as a performance booster for ZFS. A low-latency SSD can be used for the ZFS Intent Log (ZIL), where it is named the SLOG. This is used every time a synchronous write to the disk occurs. An SSD (not necessarily with a low-latency) may also be used for the level 2 Adaptive Replacement Cache (L2ARC), which is used to cache data for reading. When used either alone or in combination, large increases in performance are generally seen.[108]
In addition to ZFS features described above, UFS supports the TRIM command.
The following are noted standardization organizations and bodies that work to create standards for solid-state drives (and other computer storage devices). It also includes organizations who promote the use of solid-state drives. This is not necessarily an exhaustive list.
Organization or Committee | Subcommittee of: | Purpose |
---|---|---|
INCITS | N/A | Coordinates technical standards activity between ANSI in the USA and joint ISO/IEC committees worldwide |
T10 | INCITS | SCSI |
T11 | INCITS | FC |
T13 | INCITS | ATA |
JEDEC | N/A | Develops open standards and publications for the microelectronics industry |
JC-64.8 | JEDEC | Focuses on solid-state drive standards and publications |
NVMHCI | N/A | Provides standard software and hardware programming interfaces for nonvolatile memory subsystems |
SATA-IO | N/A | Provides the industry with guidance and support for implementing the SATA specification |
SFF Committee | N/A | Works on storage industry standards needing prompt attention when not addressed by other standards committees |
SNIA | N/A | Develops and promotes standards, technologies, and educational services in the management of information |
SSSI | SNIA | Fosters the growth and success of solid state storage |
|
|